/* wiFrame 覆写 */
a{color: #4385C1;}
.txt{
    border-color:#ccc;
    height:34px;
    line-height:32px;
}
div.txt{/* TODO 新增，为使用此样式的非表单元素添加，待扩展到 wiFrame */
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
}
.txt-min{
    height:28px;
    line-height: 26px;
}
select.txt-min{ padding:0 3px;}
.txt[disabled],
.txt.disabled{
    cursor: not-allowed;
    background-color:#fbfbfb;
}
.txt[readonly]{
    background-color: #fbfbfb;
    color: #000;
}/* TODO ???
.txt.readonly{
    border-color:transparent;
    background:transparent;
    padding:0;
}*/
.txt-search{
    padding-right:25px;
    background-repeat: no-repeat;
    background-position: center right;
    background-image: url('../images/search_silvery.png');
}
/******************/
/******************/
.blank-t{ margin-top:5px; }
.blank-b{ margin-bottom:5px; }
.t_green{ color:#5db75d; }
.t_red{ color:#d9544f; }
.t_orange{ color:#EFAD4D; }
.t_yellow{ color:#f7e50a; }
.t_blue{ color:#418BCA; }
.t_cyan{ color:#5BC0DE; }
.t_smoke{ color:#f0f0f0; }
.t_dim{ color:#555; }
.t_white{ color:#fff; }
.bg_green{ background-color:#5db75d; }
.bg_red{ background-color:#d9544f; }
.bg_orange{ background-color:#EFAD4D; }
.bg_yellow{ background-color:#f7e50a; }
.bg_blue{ background-color:#418BCA; }
.bg_cyan{ background-color:#5BC0DE; }
.bg_smoke{ background-color:#f0f0f0; }
.bg_dim{ background-color:#555;}
.star-l,
.star-r{ color:#ec3a3a;}
.star-l{ padding-right:5px;}
.star-r{ padding-left:5px;}
.btns-ctrl{ text-align:center;}
.btns-ctrl>.btn{ margin-left:10px;}
.btns-ctrl>.btn:first-child{ margin-left:0;}
.abs{
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    overflow:auto;
}
.abs-c{
    position:absolute;
    left:0;
    right:0;
    top:0;
    bottom:0;
    overflow:auto;
}
.abs-t,
.abs-b{
    position:absolute;
    left:0;
    right:0;
}
.abs-t{
    top:0;
    padding: 0 7px;
    line-height:40px;
    border-bottom:solid 1px #ddd;
    /*overflow:hidden;*/
    overflow:visible;/* 头部放置日期框，导致无法正常弹出，故改为溢出可见 */
}
.abs-b{
    bottom:0;
    line-height: 44px;
    border-top: solid 1px #eee;
    background: #fff;
    overflow: hidden;
}
.abs-l,
.abs-r{
    position:absolute;
    top:0;
    bottom:0;
    overflow:auto;
}
.abs-l{ left:0;}
.abs-r{ right:0;}
.hastop>.abs-t{ height:41px;}
.hastop>.abs-c{ top:41px;}
.hastop2>.abs-t{ height:81px;}
.hastop2>.abs-c{ top:81px;}
.hasbot>.abs-b{ height:45px;}
.hasbot>.abs-c{ bottom:45px;}
.hasleft>.abs-l{ width:200px;}
.hasleft>.abs-c{ left:200px;}
.hasrig>.abs-r{ width:200px;}
.hasrig>.abs-c{ right:200px;}

body{ background:#fff;}
.wrap{ min-width:1024px;}
.wrap-abs{
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    overflow:auto;
}
.wrap-in{ min-width:100%;}
.wrap-inabs,
.wrap-layer{
    min-width:100%;
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    overflow:auto;
}
/* wrap 下一级 */
.wrap-head{
    height: 50px;
    padding:0 8px;
    line-height: 48px;
    font-size:16px;
    color: #02A5E0;
    /*background: #fff url("../images/location.png") no-repeat 15px center;*/
    background: #fff;
    border-bottom: solid 2px #eee;
}
.wrap-abs>.wrap-cont,
.wrap-inabs>.wrap-cont,
.wrap-layer>.wrap-cont,
.wrap-abs>.wrap-foot,
.wrap-inabs>.wrap-foot,
.wrap-layer>.wrap-foot{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    overflow: auto;
}
.wrap-abs>.wrap-head+.wrap-cont,
.wrap-inabs>.wrap-head+.wrap-cont,
.wrap-layer>.wrap-head+.wrap-cont{ top:50px;}
.wrap-abs.hasfoot>.wrap-cont,
.wrap-inabs.hasfoot>.wrap-cont,
.wrap-layer.hasfoot>.wrap-cont{ bottom:45px;}
.wrap-abs>.wrap-foot,
.wrap-inabs>.wrap-foot,
.wrap-layer>.wrap-foot{
    top: auto;
    height: 45px;
    line-height: 44px;
    border-top: solid 1px #eee;
    background: #fff;
    overflow:hidden;
}
/* wrap-head */
.wrap-head-l,
.wrap-head-r{
    overflow:hidden;
    white-space:nowrap;
    text-overflow:ellipsis;
}
.wrap-head-r{
    float:right;
    padding-left:10px;
}
/* 原本为 baseline，为处理按钮无数据时会上浮到顶的问题，改为 middle - 若需改回 baseline，则将按钮中强制加 &nbsp; */
.wrap-head .btn,
.wrap-head .txt{ vertical-align:middle;}
/* wrap-cont */
.wrap-cont-c{
    position:absolute;
    left:0;
    right:0;
    top:0;
    bottom:0;
    overflow:auto;
}
.wrap-cont-t,
.wrap-cont-b{
    position:absolute;
    left:0;
    right:0;
}
.wrap-cont-t{
    top:0;
    padding: 0 7px;
    line-height:40px;
    border-bottom:solid 1px #ddd;
    /*overflow:hidden;*/
    overflow:visible;/* 头部放置日期框，导致无法正常弹出，故改为溢出可见 */
}
.wrap-cont-b{
    bottom:0;
    line-height: 44px;
    border-top: solid 1px #eee;
    background: #fff;
    overflow: hidden;
}
.hastop>.wrap-cont-t{ height:41px;}
.hastop>.wrap-cont-c{ top:41px;}
.hastop2>.wrap-cont-t{ height:81px;}
.hastop2>.wrap-cont-c{ top:81px;}
.hasbot>.wrap-cont-b{ height:45px;}
.hasbot>.wrap-cont-c{ bottom:45px;}
/* wrap-foot */

/* layer 页面 */
.wrap-layer{}
.wrap-layer.hasfoot{}
.wrap-layer>.wrap-cont,
.wrap-layer.hasfoot>.wrap-foot{
    position: absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    overflow:auto;
}
.wrap-layer.hasfoot>.wrap-cont{ bottom:45px;}
.wrap-layer.hasfoot>.wrap-foot{
    top:auto;
    height:45px;
    line-height:44px;
    overflow:hidden;
    background:#f7f7f7;
}



/* container */
.wrap-abs>.wrap-cont>.container{ min-height:400px;}/* 因部分有日期范围选择框的容器高度不够可能导致组件无法完整显示，故暂加此限制 TODO 能否将日期框弹出到 body */
.container{
    padding:5px 8px;
    overflow:hidden;
}
.container:after{content:""; display:block; height:0;clear:both;}
.container-abs{
    position:absolute;
    top:5px;
    right:8px;
    bottom:5px;
    left:8px;
    overflow:auto;
}
.container-abs>.container-l,
.container-abs>.container-r{
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    overflow:auto;
}
/* 左侧固定 */
.container-l:first-child{ width:200px;}
.container>.container-l:first-child{ float:left;}
.container>.container-l+.container-r{ margin-left:204px;}
.container-abs>.container-l{ right:auto;}
.container-abs>.container-l+.container-r{ left:204px;}
/* 右侧固定 */
.container-r:first-child{ width:200px;}
.container>.container-r:first-child{ float:right;}
.container>.container-r+.container-l{ margin-right:204px;}
.container-abs>.container-r{ left:auto;}
.container-abs>.container-r+.container-l{ right:204px;}
/* doc/index.html */
body{ background:#edeef0;}
.header{
    height:60px;
    background:#005490;
    overflow:hidden;
}
.content{
    position:absolute;
    top:60px;
    bottom:0;
    left:0;
    right:0;
    overflow:auto;
}
.footer{
    position: absolute;
    bottom: 0;
    left: 0;
    right:0;
    height:25px;
    line-height: 24px;
    font-size:12px;
    color:#fff;
    background: #035591;
    overflow: hidden;
}
/* header */
.header:after{ content:"";display:block;height:0;clear:both;}
.header-l{
    /*width:342px;*/
    /*height:100%; float:left;*/
    /*background:url("../images/head-l.jpg") no-repeat;*/
    width: 360px;
    height: 100%;
    float: left;
    /* background: url("../images/head-l.jpg") no-repeat; */
    color: #fff;
    font-size: 28px;
    line-height: 60px;
    padding-left: 20px;
    letter-spacing:2px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
.header-r{
    height:100%; float:right;
    background:none;
    line-height:60px;
    color:#04a6d7;
}
/* content */
.content-l,
.content-r{
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
}
.content-l{
    width:188px;
    right:auto;
}
.content-r{
    left:188px;
    overflow:auto;
}
.content-r>iframe{ display:block;}
/* footer */
.footer:after{ content:"";display:block;height:0;clear:both;}
.footer-l{ height: 100%;float: left;}
.footer-r{ height: 100%;float: right;}
.footer-item{
    padding:0 5px;
    float:left;
}
.footer-item span{ padding:0 5px;}

/* shortcuts */
.shortcuts{
    font-size:12px;
    float:left;
    height:100%;
    margin-right:20px;
}
.shortcuts-li{
    float:left;
    color:#fff;
    width:55px; height:100%;
    overflow:hidden;
    cursor:pointer;
    padding-top:5px;
}
.shortcuts-li:hover{ opacity:.9; }
.shortcuts-ico{
    width:36px; height:36px;
    text-align:center; line-height:36px;
    margin:0 auto;
    font-size:20px;
    border-radius:5px;
}
.shortcuts-txt{
    color:#edeef0;
    text-align:center;
    line-height:1.5;
}
.shortcuts-li:hover .shortcuts-txt{ color:#fff; }
[data-i='0'] > .shortcuts-ico{ background:#17b1b9; }
[data-i='1'] > .shortcuts-ico{ background:#9150a4; }
[data-i='2'] > .shortcuts-ico{ background:#379ad1; }
[data-i='3'] > .shortcuts-ico{ background:#e1564f; }
[data-i='4'] > .shortcuts-ico{ background:#2db36e; }
.shortcuts-li-cog > .shortcuts-ico{}
/* headico */
.headico{
    float:left;
    height:100%;
    min-width:25px;
    margin-right:20px;
    background:left center no-repeat;
    color:#94a8c3;
    cursor:pointer;
}
.headico:hover{ color:#01b7ee;}
.headico-home{ background-image:url("../images/index/ico-home.png");}
/* sidebar */
.sidebar{
    padding-bottom:25px;/*.footer的留白*/
    background: #236A9E;
    font-size: 14px;
}
.sidemenu-topbar{
    position:relative;
    height:34px;
    overflow:hidden;
}
.sidemenu-search>.txt{
    width:100%;
    outline:none;
}
.sidemenu-main{
    position:absolute;
    top:34px;
    bottom:25px;
    right:0;
    left:0;
    overflow:hidden;
}
.sidemenu-list{
    width:100%;
    white-space:nowrap;
    overflow: hidden;
    color: #E6EFF4;
}
.sidebar.folded .sidemenu-list{ display:none;}
.sidebar.folded .sidemenu-root,
.sidemenu-root{/* 一级菜单 */
    display:block;
    /*width:188px;*/
}
.sidemenu-sub{/* 二级菜单 */ background:#3E7EAE;}
.sidemenu-ssub{/* 三级菜单 */}
.sidemenu{ display:none;}
.sidemenu.visible{ display:block;}
.sidemenu-item{
    height:30px; line-height: 30px;
    cursor: pointer;
    padding-right: 10px;
    border-left: solid 3px transparent;
}
.sidemenu-item:after{ content:" ";display:block;height:0;clear:both;}
.sidemenu-haschd>.sidemenu-item{
    /*background:url("../images/sidemenu/haschd.png") no-repeat right;*/
    /*background:url("../images/sidemenu/haschd-active.png") no-repeat right;*/
    /*padding-right:32px;*/
}
/*.sidemenu-root>*>.sidemenu-item{ }*/
.sidemenu-item:hover{ background-color: #2679AD;}
.active>.sidemenu-item{
    background-color: #005491;
    border-left-color:#E25A5A;
}
.sidemenu-sub>*>.sidemenu-item{ padding-left:18px;}
.sidemenu-ssub>*>.sidemenu-item{ padding-left:36px;}
/* 菜单项内容 */
.sidemenu-icon{
    float:left;
    width: 30px;
    text-align: center;
}
.sidemenu-txt{
    overflow: hidden;
    text-overflow: ellipsis;
}
